package cn.tedu.fy.pethome.mapper;


import cn.tedu.fy.pethome.pojo.entity.Goods;
import cn.tedu.fy.pethome.pojo.vo.GoodsDetailVO;
import cn.tedu.fy.pethome.pojo.vo.GoodsListItemsVO;
import org.springframework.stereotype.Component;

import java.util.List;

@Component
public interface GoodsMapper {
    /**
     * 添加商品
     * @param goods 待添加商品信息
     * @return 受影响的行数 1 for 插入成功
     */
    int insert(Goods goods);

    /**
     * 根据id删除商品
     * @param id 待删除的商品id
     * @return 受影响的行数 1 for 删除成功； 0 for 此id不存在
     */
    int deleteById(Long id);

    /**
     * 通过商品名查找商品信息
     * @param name 商品id
     * @return 商品详细信息
     */
    GoodsDetailVO getByName(String name);
    /**
     * 通过商品id查找商品信息
     * @param id 商品id
     * @return 商品详细信息
     */
    GoodsDetailVO getById(String id);

    /**
     * 商品购买页面展示商品信息
     * @return 商品个别信息
     */
    List<GoodsListItemsVO> list();

    /**
     * 通过类别id筛选展示列表
     * @param cid 类别id
     * @return
     */
    List<GoodsListItemsVO> getByCategoryId(Long cid);

    /**
     * 通过搜索关键字来展示列表
     * @param wd 搜索框输入的关键字
     * @return
     */
    List<GoodsListItemsVO> getByWd(String wd);
}
